//存放本地的mock文件
import mockjs from "mockjs";
import pkg from 'mockjs';
const { Random } = pkg;//这是mock生成数据的一种方式；不这样写，跑本地会出现关于require的问题
 
/**
* 下面的数据生成，笔者使用了一种比较笨的方法，熟悉mock的同学可忽略-_-
*/
interface IInterface {
  url: string,
  method: string,
  response:Function
}
 
//用户数据
const userArray: any = []
for (let i = 0; i < 10; i++){
  userArray.push(mockjs.mock({
    "name": Random.cname(), //随机生成中文名字
    "age": Random.integer(18,40),//随机生成18-40的数字
    "birth": Random.date()//随机生成年月日
  }))
}
 
//商品数据
const goods: any = []
for (let i = 0; i < 10; i++) {
  goods.push(mockjs.mock({
    "name": Random.ctitle(),//随机生成标题
    "price": Random.integer(11, 400),//随机生成11-400的数字
    "sourceAddress": Random.county(true),//随机生成省市县级城市
    "image": Random.image('100x100'),//随机生成100*100的图片
    "num":Random.integer(1,100)//随机生成1-100的数字
  }))
}
const mock: Array<IInterface> = [ //这里应该是做拦截的方法api集合
    //拦截获取数据的请求
  {
    url: '/api/getData',
    method: 'get',
    response: () => {
      return {
        status: 200,
        message: 'success',
        data: userArray
      }
    }
  },
//拦截获取商品的请求
  {
    url: '/api/goods',
    method: 'get',
    response: () => {
      return {
        status: 200,
        message: 'success',
        data: goods
      }
    }
  }
]
 
export default mock //暴露，以便在src/main.ts中引入